﻿/*+===================================================================
File:      GunMachine.h

Summary:   Định nghĩa lớp CGunBlock
===================================================================+*/

#ifndef _GUNMACHINE_H_
#define _GUNMACHINE_H_

#include "GameObject.h"
#include "Bill.h"
#include "Gun.h"

/*C+==================================================================
Class:    CGunMachine

Summary:  Lớp CGunMachine.
==================================================================-C*/
class CGunMachine : public CMoveableObject
{
private:
	CBill* m_bill;             // Con trỏ đến đối tượng bill.

	int m_nStatus;

	CGun* m_pGun;

	float m_fTimeAnimation;

	float m_fTimeFire;         // Thời gian giãn cách giữa từng viên đạn.

	float m_fTimeReFire;      // Thời gian giãn cách giữa 1 loạt đạn 3 viên.

	int m_nBulletsFired;      // Số đạn đã bắn trong 1 lượt.

	void UpdateAnimation();
public:
	CGunMachine(CBill* bill, D3DXVECTOR2 pos, int id, int typeId);
	~CGunMachine();

	void Update(float timeFrame);

	void UpdateCollision(vector<CGameObject*> vecGameObjs, float timeFrame);

	void Draw();

	bool Kill();
};

#endif